home *** CD-ROM | disk | FTP | other *** search
/ Complete Linux / Complete Linux.iso / xwindows / demos / xfract_1.z / xfract_1 / xfractint-1.06 / unix.h < prev    next >
C/C++ Source or Header  |  1992-09-28  |  3KB  |  126 lines

  1. /* UNIX.H - unix port declarations */
  2.  
  3.  
  4. #ifndef _UNIX_H
  5. #define _UNIX_H
  6.  
  7. #define far
  8. #define cdecl
  9. #define huge
  10. #define near
  11. #ifndef RAND_MAX
  12. #define RAND_MAX 0x7fffffff
  13. #endif
  14. #define O_BINARY 0
  15. #ifdef CLK_TCK
  16. #undef CLK_TCK
  17. #endif
  18. #define CLK_TCK 1000
  19. typedef float FLOAT4;
  20. typedef short INT2;
  21. typedef unsigned short UINT2;
  22. typedef int INT4;
  23. typedef unsigned int UINT4;
  24. #define max(a,b) ((a)>(b)?(a):(b))
  25. #define min(a,b) ((a)<(b)?(a):(b))
  26. #define remove(x) unlink(x)
  27. #define _MAX_FNAME 20
  28. #define _MAX_EXT 4
  29. #define chsize(fd,len) ftruncate(fd,len)
  30.  
  31. #define inp(x) 0
  32. #define outp(x,y)
  33.  
  34. #ifndef labs
  35. #define labs(x) ((x)>0?(x):-(x))
  36. #endif
  37.  
  38. /* We get a problem with connect, since it is used by X */
  39. #define connect connect1
  40. /* dysize may conflict with time.h */
  41. #define dysize dysize1
  42. /* inline is a reserved word */
  43. #define inline inline1
  44.  
  45. /* Some stdio.h's don't have this */
  46. #ifndef SEEK_SET
  47. #define SEEK_SET 0
  48. #endif
  49. #ifndef SEEK_CUR
  50. #define SEEK_CUR 1
  51. #endif
  52. #ifndef SEEK_END
  53. #define SEEK_END 2
  54. #endif
  55.  
  56. extern int iocount;
  57.  
  58. char *strlwr(char *s);
  59. char *strupr(char *s);
  60.  
  61.  
  62. /* bcopy is probably faster than memmove, memcpy */
  63. #define memcpy(dst,src,n) bcopy(src,dst,n)
  64. #define memmove(dst,src,n) bcopy(src,dst,n)
  65.  
  66. /*
  67.  * These defines are so movedata, etc. will work properly, without worrying
  68.  * about the silly segment stuff.
  69.  */
  70. #define movedata(s_seg,s_off,d_seg,d_off,len) bcopy(s_off,d_off,len)
  71. struct SREGS {
  72.     int ds;
  73. };
  74. #define FP_SEG(x) 0
  75. #define FP_OFF(x) ((char *)(x))
  76. #define segread(x)
  77.  
  78. /* External functions in unixscr.c */
  79.  
  80. int unixarg(int argc, char **argv, int *i);
  81.     /* Parses xfractint-specific command line arguments */
  82. void UnixInit(void);
  83.     /* initializes curses text window and the signal handlers. */
  84. void initUnixWindow(void);
  85.     /* initializes the graphics window, colormap, etc. */
  86. void UnixDone(void);
  87.     /* cleans up X window and curses. */
  88. int startvideo(void);
  89.     /* clears the graphics window */
  90. int endvideo(void);
  91.     /* just a stub. */
  92. int readvideo(int x, int y);
  93.     /* reads a pixel from the screen. */
  94. void readvideoline(int y, int x, int lastx, BYTE *pixels);
  95.     /* reads a line of pixels from the screen. */
  96. void writevideo(int x, int y, int color);
  97.     /* writes a pixel to the screen. */
  98. void writevideoline(int y, int x, int lastx, BYTE *pixels);
  99.     /* writes a line of pixels to the screen. */
  100. int readvideopalette(void);
  101.     /* reads the current colormap into dacbox. */
  102. int writevideopalette(void);
  103.     /* writes the current colormap from dacbox. */
  104. int resizeWindow(void);
  105.     /* Checks if the window has been resized, and handles the resize.  */
  106. int xgetkey(int block);
  107.     /* Checks if a key has been pressed. */
  108. unsigned char * xgetfont(void);
  109.     /* Returns bitmap of an 8x8 font. */
  110. void drawline(int x1, int y1, int x2, int y2);
  111.     /* Draws a line from (x1,y1) to (x2,y2). */
  112. void setlinemode(int mode);
  113.     /* Sets line mode to draw or xor. */
  114. void shell_to_dos(void);
  115.     /* Calls a Unix subshell. */
  116. void xsync(void);
  117.     /* Forces all window events to be processed. */
  118. void redrawscreen(void);
  119.     /* Used with schedulealarm.  Xfractint has a delayed write mode,
  120.      * where the screen is updated only every few seconds.
  121.      */
  122. void schedulealarm(int soon);
  123.     /* Schedules the next delayed update. */
  124.  
  125. #endif
  126.